package cn.com.surker.sale.service;

import cn.com.surker.sale.entity.SaleContractPumpPrice;

import java.util.List;
import java.util.Map;

/**
 * @Author lucky
 * @create 2024年07月09 15:32
 * @desc
 */
public interface SaleContractPumpPriceBaseService {

    /**
     * 查询销售合同泵送单价信息
     * @param contractId
     * @return
     */
    Map<String, List<SaleContractPumpPrice>> findByContract(Long contractId);

    /**
     * 新增砼单价信息
     * @param orgId
     * @param contractId 合同ID
     * @param pumpTypeId 泵送种类
     * @param pumpNormId 泵送设备
     * @param price 单价
     * @param takeTime 生效时间
     * @param remark
     * @param creator
     * @return
     */
    Integer savePump(Long orgId, Long contractId, Long pumpTypeId, Long pumpNormId, Double price, Double taxPrice, String takeTime, String remark,
                 String creator);

    /**
     *
     * @param id
     * @param pumpTypeId 泵送种类
     * @param pumpNormId 泵送设备
     * @param price 单价
     * @param takeTime 生效时间
     * @param remark
     * @param creator
     * @return
     */
    Integer updatePump(Long id, Long pumpTypeId, Long pumpNormId, Double price, Double taxPrice, String takeTime, String remark,
                   String creator);

    /**
     * 禁用合同
     * @param id
     * @param status
     * @return
     */
    Integer updateStatus(Long id, Integer status, String creator);

    /**
     *
     * @param pumpList
     * @param contractId
     * @param creator
     * @return
     */
    Integer saveBatchPump(List<SaleContractPumpPrice> pumpList, Long orgId, Long contractId, String creator);
}
